package com.tkjt.pms.modules.kpiadmin.mapper;

import com.tkjt.pms.common.vos.TkIndexValueForScoreVO;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

@Repository
public interface DataGridMapper {
    //绩效填报列表根据条件查询部门拼接用户的集合
    List<Map<String,Object>> getOrgAndUserByOrgGroup(Map<String,Object> param);
    //绩效管理员调整记录
    Map<String,Object> getChangeReportForParam(Map<String,Object> param);
    //权重列表查询部门集合
    List<Map<String,Object>> getOrgByOrgGroup(Map<String,Object> param);

    //根据部门类别获取所有部门Code
    List<String> getOrgCodeByOrgGroup(Map<String,Object> param);

    //根据条件查询指标，以Map对象返回
    List<Map<String,Object>> getIndexInfoMapByParamater(Map<String,Object> param);


    int getIndexInfoCountMapByParamater(Map<String,Object> param);

    //根据条件查询指定月份绩效评分，以Map对象返回
    Map<String,Object> getMonthIndexValueForParam(Map<String,Object> param);

    //根据条件查询镜像中指定月份绩效评分，以Map对象返回
    Map<String,Object> getMirrorMonthIndexValueForParam(Map<String,Object> param);

    //根据条件查询指定月份权重，以Map对象返回
    Map<String,Object> getMonthIndexWeightForParam(Map<String,Object> param);
    //绩效汇总评分列表分页查询
    List<TkIndexValueForScoreVO> selectIndexValauePage(Map<String,Object> map);
    //绩效汇总评分列表总数查询
    int selectIndexValauePageCount(Map<String,Object> map);
    //绩效审核状态
    Map<String,Object> selectIndexValueAuditByParam(Map<String,Object> param);

    List<Map<String,Object>> getIndexCodeByTarget(Map<String,Object> map);

    Double selectOrgWeightSum(Map<String,Object> param);

    String selectLastAuditMonth(Map<String,Object> param);
}
